package com.qingcheng.service;



import com.qingcheng.domain.CategoryDto;
import com.qingcheng.pojo.goods.TbCategory;
import com.qingcheng.pojo.goods.TbSpu;
import com.qingcheng.util.PageUtil;

import java.util.HashMap;
import java.util.List;
import java.util.Map;


/**
*
* @author Simon
* @date 2020/07/27
*/
public interface TbCategoryService {

   /* *//**
     * 将商品分类树放入缓存
     *//*
    void saveCategoryTreeToRedis();

    *//**
     * 查询分类
     * @return
     *//*
    List<Map> findCategoryTree();*/

    /**
    * 查询所有
    */
    List<Map> queryAll();

    /**
    * 分页查询所有
    */
    PageUtil<TbCategory> findListAll(Integer pageNum, Integer pageSize);


    /**
    * 按条件分页查询
    */
    PageUtil<TbCategory> pageQueryByAll(Integer pageNum,Integer pageSize, TbCategory tbCategory);

    PageUtil<CategoryDto> queryCategoryList(Integer pageNum, Integer pageSize, TbCategory tbCategory);

    /**
    * 添加
    */
    boolean saveTbCategory(TbCategory tbCategory);


    /**
    * 修改
    */
    boolean updateTbCategory(TbCategory tbCategory);

    /**
    * 删除
    */
    boolean deleteById(Integer id);


    /**
    * 根据id查询
    */
    TbCategory findById(Integer id);

    /**
     * 根据id查询templateID
     * @param c3Id
     * @return
     */
    Integer C3IdQueryTem(Integer c3Id);

    List<Map> findCategoryTree();

    // 根据商品的分类随机查询出推荐的手机
    List<Map>  recommend(Integer category3);

    // 推荐相关列表
    List<TbCategory>  lists(String id);

    //  首页菜单家用电器显示
    HashMap<Map,List<TbSpu>> appliances(String parent_id);

    // 创建一个方法用于redis缓存分类列表
    void saveCategoryTreeRedis();

    // 今日推荐
    List<Map> Today();

}
